package com.zh.work.entity.channel;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

@ApiModel(value = "网关渠道实体类")
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("online_channel")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class OnlineChannelEntity extends Model<OnlineChannelEntity> {
  private static final long serialVersionUID = -9174347054577020913L;

  @ApiModelProperty(name = "主键", value = "id")
  @TableId(value = "id")
  private Long id;
  @ApiModelProperty(value = "逻辑删除字段", name = "deleted")
  @TableLogic
  private Integer deleted;
  @ApiModelProperty(name = "渠道编码", value = "channelCode")
  private String channelCode;
  @ApiModelProperty(name = "渠道名", value = "channelName")
  private String channelName;
  @ApiModelProperty(name = "T+1费率(必填)", value = "cardT1Fee")
  private Float cardT1Fee;
  @ApiModelProperty(name = "T+0费率(默认为0)", value = "cardT0Fee")
  private Float cardT0Fee;
  @ApiModelProperty(name = "渠道状态(1-已启用 2-已禁用)", value = "status")
  private Integer status;
  @ApiModelProperty(name = "请求地址(必填)", value = "urlRequest")
  private String urlRequest;
  @ApiModelProperty(name = "通知地址(必填)", value = "urlNotify")
  private String urlNotify;
  @ApiModelProperty(name = "返回地址(必填)", value = "urlReturn")
  private String urlReturn;
  @ApiModelProperty(name = "RSA公钥", value = "keyRsa")
  private String keyRsa;
  @ApiModelProperty(name = "MD5秘钥", value = "keyMd5")
  private String keyMd5;
  @ApiModelProperty(name = "证书路径", value = "certPath")
  private String certPath;
  @ApiModelProperty(name = "证书密码", value = "certKey")
  private String certKey;
  @ApiModelProperty(name = "代理号", value = "agentno")
  @TableField(value = "agentno")
  private String agentNo;
  @ApiModelProperty(name = "应用编码", value = "appCode")
  private String appCode;
  @ApiModelProperty(name = "清算类型 1-实时代付 2-虚拟账户", value = "liquidation")
  private Integer liquidation;

  @ApiModelProperty(name = "机构编号", value = "branchNo")
  @TableField(exist = false)
  private String branchNo;
  @ApiModelProperty(name = "网关机构外键id", value = "branchNo")
  @TableField(exist = false)
  private String onlineBranchId;


}
